Block diagram models are used in software to reduce complexity in representing, designing, and simulating signal-processing systems. In general, by using block diagrams models, signal processing systems can be represented as a cascade of components that perform a series of processing operations and transformations on input signals for producing output signals to simulate the operation of the signal processing system implemented in hardware, software, or other manufactured state.
Typically, function blocks are included in block diagram models to represent individual functions of the signal processing system. Additionally, the block diagram models include lines for representing interconnections between the function blocks and representing data flow through the block diagram model. Typically the number of interconnections included in a model grows proportionally with the complexity of the model. For example, a block diagram model representing a complex communication system may include thousands of interconnected function blocks that each includes one or more settings that control the function performed by the function block.